package cn.eng.pet.service;

import cn.eng.basic.util.AjaxResult;
import cn.eng.basic.util.PageList;
import cn.eng.pet.domain.SearchMasterMsg;
import cn.eng.basic.service.IBaseService;
import cn.eng.pet.dto.OrderDto;
import cn.eng.pet.query.SearchMasterMsgQuery;

import javax.servlet.http.HttpServletRequest;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author BoBo
 * @since 2022-11-17
 */
public interface ISearchMasterMsgService extends IBaseService<SearchMasterMsg> {
    //发布寻主消息
    AjaxResult publish(SearchMasterMsg searchMasterMsg, HttpServletRequest request);
    //用户查询所有寻主消息
    PageList<SearchMasterMsg> user(SearchMasterMsgQuery query, HttpServletRequest request);
    //管理员查询待处理寻主消息
    PageList<SearchMasterMsg> toHandle(SearchMasterMsgQuery query, HttpServletRequest request);
    //管理员查询已完成寻主消息
    PageList<SearchMasterMsg> finish(SearchMasterMsgQuery query, HttpServletRequest request);
    //管理员查询寻主池寻主消息
    PageList<SearchMasterMsg> toSearchMasterPool(SearchMasterMsgQuery query, HttpServletRequest request);
    //拒单
    void reject(Long id);
    //接单
    void accept(OrderDto orderDto);
}
